<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ARToolKitPlus: ARToolKitPlus::TrackerSingleMarker Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.6-NO -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li id="current"><a href="annotated.html"><span>Classes</span></a></li>
    <li><a href="dirs.html"><span>Directories</span></a></li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul></div>
<div class="nav">
<b>ARToolKitPlus</b>::<a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html">TrackerSingleMarker</a></div>
<h1>ARToolKitPlus::TrackerSingleMarker Class Reference</h1><!-- doxytag: class="ARToolKitPlus::TrackerSingleMarker" --><!-- doxytag: inherits="ARToolKitPlus::Tracker" -->Defines a simple interface for single-marker tracking with ARToolKitPlus.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;TrackerSingleMarker.h&gt;</code>
<p>
<p>Inheritance diagram for ARToolKitPlus::TrackerSingleMarker:
<p><center><img src="class_a_r_tool_kit_plus_1_1_tracker_single_marker.png" usemap="#ARToolKitPlus::TrackerSingleMarker_map" border="0" alt=""></center>
<map name="ARToolKitPlus::TrackerSingleMarker_map">
<area href="class_a_r_tool_kit_plus_1_1_tracker.html" alt="ARToolKitPlus::Tracker" shape="rect" coords="0,0,217,24">
</map>
<a href="class_a_r_tool_kit_plus_1_1_tracker_single_marker-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html#0527deda4fca6f44a671d4c8e7f146c1">init</a> (const char *nCamParamFile, ARFloat nNearClip, ARFloat nFarClip, <a class="el" href="class_a_r_tool_kit_plus_1_1_logger.html">ARToolKitPlus::Logger</a> *nLogger=NULL)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">initializes <a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html">TrackerSingleMarker</a>  <a href="#0527deda4fca6f44a671d4c8e7f146c1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html#6713fee4b754b86c8cd4a1731bf3754e">addPattern</a> (const char *nFileName)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">adds a pattern to ARToolKit  <a href="#6713fee4b754b86c8cd4a1731bf3754e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html#c2f95e444696df9218a8c38e4dbaf346">calc</a> (const unsigned char *nImage, int nPattern=-1, bool nUpdateMatrix=true, ARMarkerInfo **nMarker_info=NULL, int *nNumMarkers=NULL)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">calculates the transformation matrix  <a href="#c2f95e444696df9218a8c38e4dbaf346"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="fc71fcd8af8c8919e880ac7327c4b619"></a><!-- doxytag: member="ARToolKitPlus::TrackerSingleMarker::setPatternWidth" ref="fc71fcd8af8c8919e880ac7327c4b619" args="(ARFloat nWidth)=0" -->
virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html#fc71fcd8af8c8919e880ac7327c4b619">setPatternWidth</a> (ARFloat nWidth)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the width and height of the patterns. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html#0380303a3c91c7cd3b2963aac1e8896c">getARMatrix</a> (ARFloat nMatrix[3][4]) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Provides access to ARToolKit' patt_trans matrix.  <a href="#0380303a3c91c7cd3b2963aac1e8896c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="28246741f8e824c5489052006b3cdfdf"></a><!-- doxytag: member="ARToolKitPlus::TrackerSingleMarker::getConfidence" ref="28246741f8e824c5489052006b3cdfdf" args="() const =0" -->
virtual ARFloat&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html#28246741f8e824c5489052006b3cdfdf">getConfidence</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the confidence value of the currently best detected marker. <br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Defines a simple interface for single-marker tracking with ARToolKitPlus. 
<p>
<a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html">ARToolKitPlus::TrackerSingleMarker</a> provides all methods to access ARToolKit for single marker tracking without needing to mess around with it low level methods directly.<p>
A current restriction is that only the best detected marker is returned. If you need multi-marker tracking use <a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_multi_marker.html">TrackerMultiMarker</a>. 
<p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="6713fee4b754b86c8cd4a1731bf3754e"></a><!-- doxytag: member="ARToolKitPlus::TrackerSingleMarker::addPattern" ref="6713fee4b754b86c8cd4a1731bf3754e" args="(const char *nFileName)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual int ARToolKitPlus::TrackerSingleMarker::addPattern           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>nFileName</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
adds a pattern to ARToolKit 
<p>
pass the patterns filename     </td>
  </tr>
</table>
<a class="anchor" name="c2f95e444696df9218a8c38e4dbaf346"></a><!-- doxytag: member="ARToolKitPlus::TrackerSingleMarker::calc" ref="c2f95e444696df9218a8c38e4dbaf346" args="(const unsigned char *nImage, int nPattern=-1, bool nUpdateMatrix=true, ARMarkerInfo **nMarker_info=NULL, int *nNumMarkers=NULL)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual int ARToolKitPlus::TrackerSingleMarker::calc           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const unsigned char *&nbsp;</td>
          <td class="mdname" nowrap> <em>nImage</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>nPattern</em> = <code>-1</code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>bool&nbsp;</td>
          <td class="mdname" nowrap> <em>nUpdateMatrix</em> = <code>true</code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>ARMarkerInfo **&nbsp;</td>
          <td class="mdname" nowrap> <em>nMarker_info</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int *&nbsp;</td>
          <td class="mdname" nowrap> <em>nNumMarkers</em> = <code>NULL</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
calculates the transformation matrix 
<p>
pass the image as RGBX (32-bits) in 320x240 pixels. if nPattern is not -1 then only this pattern is accepted otherwise any found pattern will be used.     </td>
  </tr>
</table>
<a class="anchor" name="0380303a3c91c7cd3b2963aac1e8896c"></a><!-- doxytag: member="ARToolKitPlus::TrackerSingleMarker::getARMatrix" ref="0380303a3c91c7cd3b2963aac1e8896c" args="(ARFloat nMatrix[3][4]) const =0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual void ARToolKitPlus::TrackerSingleMarker::getARMatrix           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">ARFloat&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>nMatrix</em>[3][4]          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap> const<code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Provides access to ARToolKit' patt_trans matrix. 
<p>
This method is primarily for compatibility issues with code previously using ARToolKit rather than ARToolKitPlus. patt_trans is the original transformation matrix ARToolKit calculates rather than the OpenGL style version of this matrix that can be retrieved via <a class="el" href="class_a_r_tool_kit_plus_1_1_tracker.html#96a3ccd66be001d23c059928224f2cf6">getModelViewMatrix()</a>.     </td>
  </tr>
</table>
<a class="anchor" name="0527deda4fca6f44a671d4c8e7f146c1"></a><!-- doxytag: member="ARToolKitPlus::TrackerSingleMarker::init" ref="0527deda4fca6f44a671d4c8e7f146c1" args="(const char *nCamParamFile, ARFloat nNearClip, ARFloat nFarClip, ARToolKitPlus::Logger *nLogger=NULL)=0" --><p>
<table class="mdTable" cellpadding="2" cellspacing="0">
  <tr>
    <td class="mdRow">
      <table cellpadding="0" cellspacing="0" border="0">
        <tr>
          <td class="md" nowrap valign="top">virtual bool ARToolKitPlus::TrackerSingleMarker::init           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">const char *&nbsp;</td>
          <td class="mdname" nowrap> <em>nCamParamFile</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>ARFloat&nbsp;</td>
          <td class="mdname" nowrap> <em>nNearClip</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>ARFloat&nbsp;</td>
          <td class="mdname" nowrap> <em>nFarClip</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap><a class="el" href="class_a_r_tool_kit_plus_1_1_logger.html">ARToolKitPlus::Logger</a> *&nbsp;</td>
          <td class="mdname" nowrap> <em>nLogger</em> = <code>NULL</code></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"><code> [pure virtual]</code></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
initializes <a class="el" href="class_a_r_tool_kit_plus_1_1_tracker_single_marker.html">TrackerSingleMarker</a> 
<p>
nCamParamFile is the name of the camera parameter file nLogger is an instance which implements the ARToolKit::Logger interface     </td>
  </tr>
</table>
<hr>The documentation for this class was generated from the following file:<ul>
<li>TrackerSingleMarker.h</ul>
<hr size="1"><address style="align: right;"><small>Generated on Wed Jul 26 18:59:55 2006 for ARToolKitPlus by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
</body>
</html>
